User interface for network browser including pre-processor for links embedded in hypermedia documents

ABSTRACT

An interface for a World Wide Web (WWW) browser is described which recognizes HyperText Markup Language (HTML) links embedded in WWW pages. Normally, such links are highlighted on a graphics screen and are activated using a pointing device such as a computer mouse. When each HTML link is recognized by the interface, it is assigned an identifier which can be selected by a user of a system incorporating the interface by means defined by the interface other than a mouse, for example by a keypad.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to network based access systems in which accessis provided by activating links in files containing addresses, forinstance in the manner of activating links embedded in files written inHyperText Markup Language (HTML).

2. Related Art

An increasing amount of information is becoming available on distributedcommunications systems. Most well-known perhaps is the World Wide Web(WWW) area of the Internet, accessed using WWW browsers. Pagesconsisting of text, graphics, audio files, video files etc. are eachassociated with an address in a distributed network by means of whichthey can be accessed. A review and tutorial on HTML, particularly itsuse in the Web environment of the Internet, is published in the paperentitled “Creating a Hypertext Markup Language Document for anInformation Server” by JYM Chu, WL Palya and DE Walter in BehaviourResearch Methods, Instruments and Computers, 1995, Vol 27(2), at pages200-205.

Pages, usually of text, are displayed on a screen. At system startup,the page displayed will usually be provided by a user's browser.Navigation from a first page to a location elsewhere in the network isachieved by means of a link embedded in the first page and visible onscreen. Usually, the link holds the address for the second location.When a user “clicks” on the link in the first page, the browser isactivated to go to the location address held by the link. Thus theauthor of any page can make other pages, files or applicationsaccessible regardless of their geographical location by links from theirown page to relevant locations in the Internet.

(The term “page” as used herein should not be understood to refer onlyto pages of text and graphics but also to audio files, video files,Virtual Reality files and computer applications (software) that may bemade available via systems such as the Internet and WWW, if the contextso indicates.)

Current WWW browsers such as Netscape® use a click from a pointingdevice (for example a mouse) to select the links and thus to movebetween pages. That is, the device positions a cursor on the screen soas to identify a selected link. Although ‘point and click’ navigation isintuitive to people familiar with computer graphical user interfaces,this is not the case for a large proportion of the population.Furthermore there are many situations where a pointing device is notsuitable for reasons of: cost, complexity, reliability, size,environment, etc.

SUMMARY OF THE INVENTION

According to the present invention, there is provided an access systemfor accessing a location in a network by activating a link in a file,which link contains a location address or an identifier for a locationaddress, which system comprises:

-   i) means for retrieving one or more files;-   ii) means for searching a file so retrieved to locate one or more    links embedded therein;-   iii) means for assigning an identifier to any link so located;-   iv) selection means for use by the user to select an assigned    identifier; and-   v) activating means responsive to selection of an identifier to    activate the associated link.

Depending on the nature of the link activated, or on the locationassociated with the link activated, the access system may then access adata file, such as text pages from the Internet, or may access othertypes of file, including videos or computer applications, such asconferencing applications.

The location associated with the link activated could alternatively be alocation in a communications network, such as a telephone or facsimilenumber or an electronic mail address. Equipment to enable acommunications connection to be established in this way is disclosed incopending British patent applications GB9619958.3 and GB9707712.7 filedon Sep. 29, 1996, and Apr. 16, 1997 respectively, in the name of thepresent Applicant.

By providing identifiers for the links, and providing a way of selectinga link via its identifier instead of operating directly, on-screen, onthe link, embodiments of the present invention allow use of a differentuser interface from the pointing type of device, usually a “mouse”,usually used with such links. This means that the user can choose aninterface which is better suited to them or more available to them thanpointing devices such as a mouse.

It is even possible, using an embodiment of the present Invention, toselect a link which has been presented to the user non-visually, forinstance by sound.

One example of an environment in which a different user interface isalready utilised for other purposes is in the home. Remote controlhandsets are frequently used to control domestic audiovisual equipment,for example: video tape recorders, hi-fi equipment and televisions.Also, a significant proportion of the television sets currently producedfor use In the UK are equipped with Teletext which can only be accessedby using a remote control handset. This has established a familiarmetaphor for controlling electronic equipment using a command-basedcontrol system-based on key-presses rather than pointing. Teletext onlyfunctions with prepared information however. It cannot be used in adynamic, uncontrolled environment such as with information from theInternet.

Embodiments of the present invention can be provided for instance as aterminal, or the like, which can display pages from the World Wide Web,using an alternative “command-based” interface to select identifiers forlinks embedded in the pages seen on the terminal. For instance, theremight be provided a simple Teletext-type remote control handset andsimple coloured button-type labels for different links on the screen.The user operates the handset to select a label, rather than having touse a ‘point and click’ WWW-type interface. Thus users do not have toposition a pointer on the screen in order to select a path through a setof information pages. Instead navigation can be achieved by a series ofkey-presses which activate links.

It should be noted that, although the specific embodiment describedbelow uses a television screen to display the WWW information, the‘command-based’ interface is not restricted to use with a televisionscreen: a wide range of other displays can be used. For example, adisplay panel on a telephone could be used to display the information,with the telephone keypad buttons being used to control the navigation,or a mobile information terminal could be produced, combining thefunctions of a mobile phone, pager, and personal organiser, whilst usinga minimal set of buttons.

An example of the use of telephone keypad buttons being used inconjunction with a screen display is described in copending Europeanpatent application number 97300929.3, filed on Feb. 13, 1997 by thepresent Applicant.

The physical implementation of the command interface need not be basedon a key-pad on a remote control handset. There are a large number ofalternative ways of providing user commands, and some of these are alsodetailed below.

An application which could be accessed by an embodiment of the presentinvention is a conferencing application. Screen-based audio-conferencingapplications are described in copending British patent applicationnumbers GB 9620000.1, filed on Sep. 25, 1996, GB 9620260.1, filed onSep. 27 1996, and GB 9705097.5, filed on Mar. 12, 1997, and in copendingEuropean patent application number EP 97302615.6, filed on Apr. 16,1997, all in the name of the present applicant. By accessing a locationat which an audio-conferencing application is accessible, the user wouldin fact most likely first be offered a text page for registration in theconference. Hence the launching of the conferencing application could bevery similar to accessing a text page from the Internet.

An application to be launched is determined by a file extension of thelink address. Another example of such an application is a video viewerwhich allows a user to view moving pictures. Many methods of codingmoving pictures are available. One widely adopted technique is thatdefined by International standard ISO-IEC11172 “Coding of MovingPictures and Audio for Digital Storage Media at up to About 1.5 Mbit/s”,known as MPEG1. Files which conform to MPEG1 are conventionally namedwith a file extension of “.MPEG” or “.MPG”. Files which are suitable forviewing with a QuickTime® viewer from Apple® conventionally have a fileextension of “.MOV”. If a link to such a file is located, an identifieris assigned to the link and an application is launched automatically ifa user has specified the application to be associated with a particularfile extension. Otherwise the user is asked to specify the applicationto be launched. Similarly a link may require a video conferencingapplication to be launched and a video conferencing connection to beestablished. Such links need to include an application specific fileextension for example “.VCL” for a videoconferencing link.

A particularly advantageous aspect of the present invention is thatdifficulties which would normally be met in presenting Web-compatiblepages on a screen not normally for that purpose can be overcome. Asmentioned above, the links in a Web-compatible page are designed to beselected by the user using a pointing device to place a cursor at theposition of the link in the text. Without a pointing device, it is notpossible to select the link. However, by assigning a more genericidentifier to the link, it becomes possible to use for instance akeypad.

The identifier assigned to a link may be any of several types ofidentifier. It needs to identify each link as different from other linksviewable at the same time on screen and it needs to be selectable by anon-pointing device such as a keypad. Hence, examples of identifiersassigned to links could include colours, each link being shown on screenin a different colour. Coloured buttons on a keypad could then be usedto select a link. Just the initial letter of a link could be coloured.Another example is a number. Each link could be shown on screen with anumber added and a keypad could be used to enter the relevant number.

Numbers lend themselves to use where a link is presented to the user assound instead of visually. The existing link could have a spoken numberadded to it and the user would use that number as the link identifier.

The identifier for a link can also be at least partly derived from thenormal on-screen appearance of the link. For instance, the identifiersmight be truncated versions of the text (or graphics) of the linkitself. These identifiers might appear on screen in addition to the linkitself. Hence the links may appear embedded in the text on screen as isusual with Web pages, but there may also be provided an area on screenwhich shows just the identifiers, for ease of selection. In order torelate the identifiers to the links, it is useful that the identifiersinclude a truncated version of the text (or a symbol perhaps) from therelevant links. Embodiments of the present invention provide a means togenerate that form of identifier at the client end, thus allowing anyoriginal text having embedded navigation links to be used with suchembodiments of the present invention.

In more detail, although it is possible for the author of a pageincorporating a link to design the link specifically so that it could beused by embodiments of the present invention, in Internet environmentsthat would clearly have to be done in the page stored at the server tobe accessed. It would be impractical in the usual Web-type environmentto control the page design at all accessible servers. In order to makethe system practical for all accessible pages, files, applications etcover the Internet, embodiments of the present invention are based on aclient environment which controls the way the links are shown at theclient end. That is, a client device is provided which reads retrievedlinks and converts them wherever necessary by assigning an identifierwhich may in practice replace or supplement the link as it wasoriginally authored, for display at the client device.

As indicated above, it may be preferred, for clarity, that embodimentsof the present invention display not only the links as they appear in apage of text, but also the identifiers, displayed in a dedicated area ofthe screen. These identifiers may be provided by a set of “hot buttons”which repeat the functionality of the links. For instance, it might beclearer to the user to have an array of buttons to select from, in anarea across the bottom of the screen. This would be particularly so fora user familiar with the Teletext environment. Small display screens maynot have the space available to show the page of text as well as anarray of “hot buttons” having the originally authored on-screenappearance of the links. Embodiments of the present invention can thenbe particularly useful by replacing lengthy link descriptors with simpleidentifiers, such as numbers or colours, at least for an array of “hotbuttons” added to the page of text.

Embodiments of the present invention are useful in environments wherethe size of the text is large relative to the screen area available fordisplay, but the user is still going to need to select links. Thisoccurs, as mentioned above, in cases where the screen display is simplysmall, such as in an aircraft where individual screens are provided forusers. It also occurs however where it is required to provide largetext, for instance because the user has reduced visual ability orbecause the screen has to be visible from a distance. Embodiments of thepresent invention are generally useful in the manner in which linkon-screen appearance can be tailored for the user environment withoutloss of functionality.

In general, embodiments of the present invention can provide a browsingcapability, providing functionality for retrieving data and actinginteractively as in known Internet browsers, with the added aspect ofdynamic pre-processing of information at the user interface.

BRIEF DESCRIPTION OF THE DRAWINGS

A terminal and interface system, herein referred to as “the EasyTerminal”, will now be described as an embodiment of the presentinvention, by way of example only, with reference to the accompanyingFigures in which:

FIG. 1 shows schematically the main components of the Easy Terminal;

FIG. 2 shows an example of a welcome screen;

FIG. 3 shows an example layout for a remote control handset for use inthe Easy Terminal;

FIG. 4 shows a block diagram of the Easy Terminal hardware;

FIG. 5 shows a flowchart overview of the software processes of the EasyTerminal;

FIG. 6 shows a flowchart of a process used to analyse HTML to find linksto other pages;

FIG. 7 shows a flowchart of a process for creating text for text buttonsin a display for the Easy Terminal;

FIG. 8 shows a flowchart of a further process for creating text for textbuttons in a display for the Easy Terminal;

FIG. 9 shows a flowchart of a process for recording history of pagesaccessed by means of an Easy Terminal;

FIG. 10 shows a flow chart of a process for responding to userselections by means of the remote control handset of FIG. 3;

FIG. 11 shows a flow chart of a process for ordering links displayed ona display by Easy Terminal; and

FIGS. 12 to 14 show flow charts of a process for clever scrolling of ascreen display in Easy Terminal.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

As described above, the Easy Terminal provides a simple informationinterface. The system is designed to provide an interface to electronicinformation in the form of pages of text and graphics, audio files,video files etc. which can be accessed using key-presses. Theinformation is derived from the WWW and is simplified and processedbefore being displayed.

Referring to FIG. 1, the main components of the Easy Terminal are adisplay 100, controlled by the user from a remote control handset 105.Information is accessed on the WWW 110 via a network connection 115, andprocessed by the Easy Terminal process software 120.

Effectively, Easy Terminal provides a Web browser of known type but witha significantly different user interface providing significantlydifferent control functionality.

The display unit 100 is a standard television. In order to ensuremaximum legibility of text on the screen, large sans-serif fonts areused as much as possible. Anti-aliased fonts should be used if they areavailable. Text and background colours are chosen to ensure goodcontrast.

In addition to proportionately spaced text as described above, thescreen can display high resolution colour images.

Referring to FIG. 2, on switch-on, the user is presented with a welcomescreen with a general layout divided into three sections:

-   -   Masthead 200    -   Body 205    -   Footer 210

The Masthead 200: the upper part of the screen acts as a fixed“masthead” which is used to identify the name of the service beingprovided, as well as provide feedback to the user. For instance, thenumber entered from the key-pad would appear at the upper left in thisexample, whilst the status appears at the upper right (‘Ready’).

The Body 205: the main portion of the screen is devoted to displayingWWW pages and/or processed WWW information. This part of the screen canbe scrolled so that viewed pages can be larger than the available screenarea. (The masthead and footer are not affected by this scrolling.) Ingeneral, pages which are displayed are made up of five major elements:

-   -   Headings which are normally large and in bold type. In this        case, “Main Index” is shown.    -   Text    -   Links 215 (normally shown as highlighted text with an optional        preceding three digit number    -   Graphics (pictures)    -   Tables

Some pages, for instance home pages for particular services, may besimply a list of links from which the user can select further pages toaccess. The further pages will then generally comprise a mix of textand/or graphics and tables, with links embedded at irregular positions.The example shown in FIG. 2 is of the home page type, showing simply alist of links.

The Footer 210: the lower part of the screen is also fixed, and providesspace for four coloured text labels 220—the colours are matched to thefour colours of the buttons provided on the user's key-pad: Red, Green,Yellow, Blue. These are shortened versions of links 215 appearing in thebody of the display 100 and are labelled with either descriptive textfor the links 215 or a three digit number. The labels 220 enable any oneof the links 215 in the body 205 of the display 100 to be activated. Thelabels 220 appear in a group of four and initially relate to the firstfour links 215 shown in the body 205 of the display. As the links shownin the body of the display are scrolled through, the labels can alsoeffectively be scrolled through by activating a “Next” key on the keypad105 which steps the labels on to show the next set of four links. Hence,if the labels display descriptive text or a link number, this can bechanged as the links are scrolled. When all the links have been scrolledthrough and displayed, then the first set are re-displayed.

If descriptive text is used for the labelling, this can be derived fromthe link text shown in the body of the display 100.

Referring to FIG. 3, the user may then access new WWW pages, which willtake over the body of the display 100, using the remote control handset105. The remote control unit 105 in this implementation is atelevision-type unit with a keypad. An example of a suitable handset has25 buttons, as shown in FIG. 3.

Twenty-five buttons represents a good compromise between the number ofavailable functions and the numbers of buttons available on commonremote control handsets.

Up and Down keys 300, 305 on the keypad scroll the current page seen inthe body of the display 100 up and down. This can be done in a way whichis referred to herein as “clever scrolling”. The use of the Up and Downkeys 300, 305 to move the on-screen view of the HTML page can be in twomodes. The default mode is to provide scrolling which is related to thelinks on the page. When a page is initially displayed, the first fourlinks are coloured to show their association with the four colouredbuttons on the remote control or the on-screen coloured text label area.If the Down key is pressed, then the next four links on the page arecoloured and the first four links revert to a default colour used toindicate links which are not available via the remote control or theon-screen coloured text label area. When the user presses the Down key,the system does a check as to whether there are links on the page whichare not currently highlighted. When the last visible link on the page iscoloured, then any subsequent pressing of the Down key will cause thescreen to roll downwards (one line at a time) until either the end ofthe document is reached, or another link becomes visible which is notcoloured. A similar mechanism can be used for the scrolling upwardsprocess.

“Clever scrolling” in this manner is described in more detail below,with reference to FIGS. 12 to 14.

A Back button 310 can also be used for scrolling upwards in aminimal-button interface.

A Next button 315 can also be used to scroll the display—but this islinked to the number of links which are visible on the screen, and isintended for specialist applications where a minimal button-set isrequired. The Next button scrolls the body of the display downwardsuntil four links are visible. These can then be activated by respectivecoloured text labels in the Footer of the display 100. Pressing the Nextbutton then scrolls the display to present either the next page of text,or the next four links. Links 1, 5, 9 etc are thus always associatedwith the Red button, links 2, 6 and 10, etc the Green button, and so on.in a non-minimal-button interface, the Next button is used to select thenext four links on the page, regardless of their being displayed on thecurrent screen—the coloured text labels would then update to reflect thechange of links.

A Summary button 320 uses an online text summariser to produce ashortened form of the current page.

By pressing Help 325 and selecting Settings from a “user setup” page,the user may enlarge or reduce the size of the text, and select whetherjust text characters or pictures and text characters are displayed.

A new page may be selected by one of two methods:

-   -   Link and Number buttons    -   Navigation buttons

The Link and Number buttons are the four coloured buttons 330, plus thenumeric buttons 335. As mentioned above, the links in the body of thedisplay 100 may have a preceding three digit number. To use the Link andNumber buttons to select a link to activate, either one of the colouredbuttons 330 can be pressed, or a three digit code can be used, using thenumeric buttons 335 on the keypad 105.

If one of the coloured buttons on the remote control is pressed, thiswill produce a new page corresponding to the appropriate coloured label220 in the footer of the display 100. The label 220 will be showing adescription identifying the link it is currently related to in the bodyof the display 100—it is this related link which will then be activated.

If alternatively a three digit code is entered, using the numeric keypad105, as soon as the third button is pressed, then the associated link isactivated and a new page is retrieved. If a correction is required, themost recently entered digit may be deleted with the Del key.

There are many possible Navigation buttons which provide dedicatedfunctions when they are pressed. Some of the possibilities include:

-   -   Back 310 allows the user to return to the page previously        displayed    -   Index 340 displays the main index page which is seen at        switch-on    -   Help 325 displays a menu of help pages on the use of the        terminal    -   Top 10 345 displays a list of pages which have been frequently        and recently visited.

There are also three control keys which allow the user to control theloading of the pages:

-   -   Stop 350 Abandons the retrieval of a requested page. This may be        used if the page is unavailable because of network problems or        if the download is unacceptably slow    -   Undo (not    -   shown) This button can be used to combine the functions of the        Stop and the Del key—using the context at the time of use.    -   Reload 355 This refreshes the current page, downloading a new        copy from the network. This may be used to ensure that the        displayed page is up-to-date.

Smaller numbers of buttons can be used by omitting features, or byrequiring combinations of buttons to be pressed simultaneously. Aminimal set of buttons would be approximately six buttons: the fourcoloured buttons, plus the ‘Next’ button, and a ‘Back’ button. Theprecise function of the named buttons is described later.

An example of a minimal set of buttons is provided by the simple “gamepad” controller—as used widely for home video/computer game consoles.The “game pad” consists of eight buttons arranged in two groupings: fourcoloured buttons plus an additional four buttons conventionally used toindicate direction, rather like a primitive joystick.

The utilisation of the game pad buttons in an embodiment of the presentinvention is as follows:

-   -   a the four coloured buttons are used to select links on the page    -   “Up” and “Down” buttons which scroll the page and the coloured        links (using “clever scrolling” as described below)    -   a “Back/Delete” button. This functions as “back” except when the        user is editing text, in which case it functions as “delete”    -   an “Index/Finish” button. This takes the user to a main index        page unless text is being edited, in which case it finishes the        text

Other minimal button interfaces are also possible. The interfaceprovision of embodiments of the present invention can be easilyextended.

Simple keypads that provide only the digits 0 to 9, plus two additionalbuttons (conventionally as a three column by four row block) can be usedby redefining the function of the buttons on the keypad:

-   -   the “0” button becomes the “Back” button    -   the two additional buttons are used for paging upwards and        downwards

Referring to FIG. 4, the implementation of the Easy Terminal describedhere consists of a hardware platform and the associated software. Thesystem is a linked mixture of hardware and software elements, and bothparts are required to produce the display.

The hardware platform for the embodiment of the Easy Terminal describedhere consists of a number of components. Many of these would be commonto most alternative implementations.

The components are detailed below:

Communications Network 110 An Ethernet based connection to the InternetNetwork Link 115 An Ethernet communications card for a personal computer(PC) Processor 120 A Gateway ® P4D-66 IBM ® Com- patible PC Computerwith 486 DX2/66 Processor. Hard disk 43 A 540 MB Internal Hard DiskDrive Infra-red Handset 105 A Propresenter Plus 25 button handset for PCInfra-red receiver 41 A Propresenter URC receiver for PC Graphics Card44 An ATI MACH 64 PCI graphics card TV Output 45 Derived using aCreative Laboratories TV Coder for PC

The hardware is in four parts:

-   -   Control    -   Input    -   Processing    -   Output

The Control hardware comprises the Infra-red Handset 105 and Receiver41.

The Input hardware comprises the Communications and Network Link 115,which connects the PC to the WWW 110.

The Processor 120 itself carries out the Processing of the Control andInput data in order to produce the Output display.

The Output is in the form of a TV picture, produced from the computerdisplay by using a graphics card and a specialised TV converter.

FIG. 5 shows a flowchart showing an overview of the software and theprocesses carried out in the Easy Terminal. The code is written inBorland Delphi (Object Oriented Pascal) for Microsoft® Windows 3.1. Theprimary steps are as set out in FIG. 5:

STEP 520 Search HTML file for links to other pages STEP 545 Fit colouredlabels to screen and display STEP 550 Record history STEP 555 DisplayHTML

Referring to FIGS. 6, 7, 8 and 9, each of the primary steps 520, 545,550, 555 shown in FIG. 5 is now described in more detail.

Search HTML File for Links to Other Pages: STEP 520

An HTML file contains reference to other pages (also known as “links”)in the following form:

-   -   <A HREF=“page reference”>Link Text</A>        where the <a and </a> are tags which indicate the beginning and        end of the reference respectively. The page reference indicates        the WWW address of the page indicated, and will be in the form        “http://. . . ”. Note that those parts of the address which are        the same as the present page are not always given, and that some        expansion of the address is often required to create the        complete address required.

Referring to FIG. 6, when a new page is to be displayed in the body ofthe display 100, it needs to be searched, STEP 520, for links to otherpages so that those links can be differently displayed from ordinarytext in the body of the display 100, and so that the labels in thefooter of the display 100 will display appropriate colours ordescriptions.

The system will therefore start, STEP 500, for instance, when a new(unprocessed) page has been accessed, usually because it has beenrequested by a user.

STEP 600: The HTML file containing the page is opened and, STEP 605, theprocess will read each character of the text in turn to see whether itintroduces a reference, or a link, to another page. To do that, it runsa test, STEP 610, “Does text read “<a′?” If the answer is yes, theprocess will read the file through to the symbol “</a>”, STEP 615.Between these two symbols, the process takes the text as a pagereference, or link, STEP 620, and evaluates that link for its full pathname, STEP 625. (Often HTML addresses are abbreviated to the parts ofthe address which are different from the current page address. It isnecessary to expand these partial addresses so that they can be comparedwith stored addresses in the history lists etc). The system then addsthe link to a list of the links or page references for the page beingsearched, STEP 630, and stores the text of the page reference prior toprocessing for the labels, STEP 635.

In STEP 640, the system will add a three digit number to the front ofthe page reference, or link text, for display in the body of the display100. This three digit number is also added to the appropriate pagereference in the list of links found in the page being searched and willappear in, or at least be correlated with, a label at any time that therelevant link is one of the first four links displayed in the body ofthe display 100.

The process will then search for further links, until the end of thefile is reached, STEP 645, and the process is terminated, STEP 650.

Shortening Link Text: STEP 545

The Easy Terminal displays four coloured text labels at the bottom ofthe screen. Most Internet link descriptions are too long, and mayrequire truncation in order that the total length of the four labelswill fit onto the screen width in a font which is legible on thedisplay.

For the television display used in this implementation, the linkdescriptions are thus processed in the following way prior to display inorder to make them as intelligible as possible.

Referring to FIG. 7, where the text from a page reference has beenstored for processing to provide a coloured label, STEP 635, the nextstep is to process the text for each page reference. This process startswith a check, STEPS 700, 705, whether the page reference contains textto be truncated to provide a label or whether it contains an indicatorthat a label has already been supplied by a user. If the label hasalready been supplied, then the system will use that label, STEP 710.The process stops for that particular page reference, moving on to startagain for the next.

To allow an author (or other user) to provide the labels, aspecial-purpose HTML tag has been defined. This enables HTML authors toembed pre-prepared shortened text labels for the coloured text labels.An example would be:

-   -   <A HREF=“page reference” HOTKEY=“Link1”>Link text</A>

Thus the functionality of the <A command in HTML is extended.

If the label has not been defined by a user, the process checks whetherthe page reference, or link, is a picture, STEP 715. If the pagereference is indeed a picture, then the process looks for ALT text, STEP720. If the text exists, this is used for deriving a label, STEP 725. Ifthe ALT text is not there, then the system allocates a three digitnumber to the page reference concerned and uses this for the label, STEP730.

Where the page reference was text, or ALT text existed, then the processstarts truncating it. It removes any HTML commands, STEP 735. The pagereference then has to be shortened.

First each link description is shortened to a length that represents thespecial case of four numbered links plus one text link, STEP 740. Forthe television example described here this is approximately 30characters. Partial words left hanging at the end of a link are removed,STEP 745, and the link reduced by one character, STEP 750. Someunnecessary words such as “THE” and “A” may be removed to reduce thelength of the link text still further, STEP 755. Words such as “AND” and“OR” can be shortened to “&” and “/”, STEP 760. This process is asimplified form of the technique known as stemming, and moresophisticated processing may be used to improve the truncationefficiency.

Lastly, a number of non-standard HTML codes need to be converted beforedisplay, or removed, STEP 765. For example, a copyright symbol iswritten as &copy, and needs to be converted to (C) before display,whilst the emboldening command <B> and its reverse </B> need to beremoved.

After this first truncation step, the labels, or “button information”,are stored.

Referring to FIG. 8, even after these modifications have been made, thecombined link text from the four link labels may still be too long, andwill overspill the width of the screen. When the relevant page is to bedisplayed, the system will then go into a second truncation process. Atthis stage, the labels are processed in the fours in which they willappear on the screen during display.

The second truncation process makes a check step on the length of thelabels, STEP 800. If the labels in combination are wider than thescreen, the maximum length of the link labels is reduced by onecharacter (ie first to 29, etc) with the longest link label beingprocessed first, STEP 805. This ‘balances’ the length of the label textbetween the links. Partial words at the end of the text are removed,STEP 810. Finally, words like “AND” and “OR” are removed if they are thelast word in the label text, and therefore redundant, STEP 815. Thereduction of the length is continued until the labels will fit on thescreen, and then they are displayed, STEP 820.

Recording History: STEP 550

Referring to FIG. 9, a history of the pages selected by the user isimportant for a number of reasons:

-   1) the user may wish to back-track to a page they have recently    looked at-   2) the user may select a list of the 10 most recently visited pages-   3) the user may wish to see a list of the 10 pages which they    frequently visit-   4) a log of the activity may be kept

Most of these functions are relatively simple. However 3) listed aboverequires more sophistication.

In the current implementation the Easy Terminal maintains a list of the10 pages most frequently visited in the last 7 days of operation. Inorder to do this it must first have a list of all pages which have beenvisited in the last 7 days: a history log containing counters, dates andaddresses. The history log associates each page with seven day-counterswhich count the number of accesses of each page during that day.

Referring to FIGS. 5 and 9, when a new page has been accessed by a user,the page reference is added to an unsorted log file, STEP 900. This is asimple list of all pages accessed and can be effectively of unlimitedlength. The process of appending a new page reference is straightforwardand not further described herein.

The new page reference is also added to a recently visited pages list,STEP 905. The recently visited pages list is maintained at a length of10 page references by running a check each time a page reference isadded, whether the list has gone over 10, STEP 910. If it has, theoldest page reference is dropped, STEP 915. Again, this list isunsorted.

As well as the unsorted log file, an alphabetic list of the names of allpages visited is maintained, together with a count of the number oftimes a sage has been visited. To update the alphabetic list, abisection search is carried out to find out whether the page has alreadygot an entry, STEP 920. If no entry is present, then a new entry iscreated along with a new set of seven counters, STEP 925. If an entry isalready present, then the relevant day-counter is incremented, STEP 930.

The alphabetic list allows the user to review which pages have been mostfrequently visited. A button on a keypad 105 or a three digit code, canbe allocated to a function “Show 10 most frequently visited pages”. Ifthis is selected, the system can sort the alphabetic list according tothe contents of the counters. Thus when a list of the 10 most frequentlyvisited pages is selected, the system counts up the total number oftimes each of the pages in the list has been accessed over the last 7days, and sorts the list so that the top ten entries can be displayed.

Each time a page is accessed, the counter for the current day isincremented. When the beginning of a new day is detected, the countersare updated, and pages which have not been accessed over the last 7 daysare removed from the alphabetic list.

Other schemes for maintaining a “Top 10” list are of course possible.Some possibilities are suggested below, in discussion of alternativeembodiments and possible refinements in the present invention.

Displaying HTML: STEP 555

Commercially available HTML displaying software is used to display themodified HTML code. This is not therefore described further herein. Anumber of minor modifications need to be made to the code however toremove error messages when images are not displayed and to remove theunderlining from HTML hotlinks.

Referring to FIG. 10, the remote control handset 105 sends commandsusing a standard serial port protocol. When a button is pressed, aWindows event is generated which activates a subroutine with thefunction shown in FIG. 10. The user interface is thus a combination ofthe screen display 100 (specifically the coloured text labels) and thecoloured buttons on the remote control 105.

When the button is pressed on the remote control 105, this activates thesubroutine to retrieve the data incoming from the remote control 105 atthe serial port, STEP 1000. The subroutine will then act on the dataretrieved, firstly by matching the data against possible buttonidentities, STEPS 1005, 1010, 1015, 1020, 1025, 1030, 1035. Depending onthe outcome of each check, the subroutine will kick off a differentprocess. For instance, if the key is found to be a digit key, STEP 1005,the subroutine will add the relevant digit to a current number selectionstore, STEP 1045. If there are now three digits in the current numberselection store, this is sufficient to identify a page reference and thesubroutine will translate the three digits to a page reference, STEP1050, by reference to the link list maintained above at STEPS 630 and640.

The subroutine is now enabled to fetch the page from the WWW.

If the key does not represent a digit but is a hotkey (that is,identifies a label), then the system will have sufficient information togo direct to the link list, STEP 1050, and fetch the page.

If the key provides any of the following functions, then the subroutinewill fetch a page directly: “Index, Help, Top 10, Reload, Back orSummary”, STEPS 1015, 1020.

The key may be a control key acting on the screen, such as “Down, Up,Undo”, STEPS 1025, 1030. The subroutine will then scroll or update thescreen or undo the last key press appropriately.

The key may have been the key “next”, for displaying the next fourcoloured text labels. In this case, the subroutine will recognise the“next” command, STEP 1035, and display the labels as requested, STEP1065. To support the “Next” key function, the system has a counter whichcounts the number of times the Next key has been pressed while viewing adocument. This enables the system to track which set of four labelsshould be being displayed.

The last option in this embodiment is that the key represents a “stop”command, STEP 1040. The subroutine will respond by abandoning loading ofthe next page, STEP 1070.

An advantageous feature for embodiments of the present invention is todetermine the order of links appearing in a page on screen, andtherefore to control colour and/or number allocation, according to theposition of the links of the screen rather than their order in the text.This can ensure that links will always appear in sequence when thedocument is read in a conventional direction, for instance from left toright and top to bottom in a Western environment. Problems can occurotherwise for instance in tables which can have the effect that numbersappear out of order on the screen—for instance when only a few links arevisible in a multi-column table—the first column of links may onlydisplay one or two coloured or numbered links whilst the remainingcolumns have no coloured or numbered links.

This can be resolved by the system noting the co-ordinates of the linkson the screen in the current viewed page whilst the page is beingpre-processed. The links can be assigned to numbers in sequenceaccording to their “y” and then their “x” co-ordinates. Once this orderhas been established, then the colours or numbers can be applied. Thisprocess will only need to be repeated for the page if the presentationof the page in the window changes, for example if the font size ischanged.

FIG. 11 gives an example of how improved link ordering could beimplemented and the following description should be read in conjunctiontherewith.

The HTML is read in item by item (STEP 1100). An item is either asection of text, a code or object within the page. The size of each itemis then calculated, and then ‘placed’ on the page with an X and Ycoordinate relative to the top-left of the page. If the object is a link(STEP 1105), the space would be left for later insertion of the linknumber (STEP 1110). (If no improved link ordering was present, this linknumber would be a sequential number in the order in which the links werefound in the HTML. Thus once the entire file had been read, the pagecould be drawn on screen).

However with improved link order, the X and Y co-ordinates of each linkwould be noted in integer arrays (STEP 1115) along with an index array Nwhich would contain a sequentially assigned integer (L in the Figure)(STEP 1120).

Once the entire file has been read in, a ripple sort algorithm (STEPS1125-1155) is used to find the link which is has the lowest Yco-ordinate, and is thus closest to the top of the page. If more thanone link has the same Y co-ordinate, the links are ordered according totheir X co-ordinate, so that the links read sequentially from left toright. This link is assigned to a number which is then increased by one.As the process is repeated, the links are thus ordered. Eventually thelinks are ordered according to their Y and X co-ordinates. The array Nacts as a reference to the action which must be taken in the event ofthe link being selected.

For example, suppose the HTML is as follows

< table > < tr > < td > < a href = “Item 1” > Apples > < /a > < br > < ahref = “Item2” > Bananas > < /a > < /td > < td > < a href = “Item3” >Pears > < /a > < br > < a href = “Item4” > Plums > < /a > < /td > </table >

On a standard HTML browser, this will produce a matrix of 4 links

-   Apples Pears-   Bananas Plums

Without Improved Link ordering, in Easy Terminal, the links are numberedaccording to the order in which the links appear in the HTML code, thusthe links will appear as

-   001 Apples 003 Pears-   002 Bananas 004 Plums

However, with Improved Link Ordering, the links will be re-ordered as:

-   001 Apples 002 Pears-   003 Bananas 004 Plums

and the array N will contain the elements (1, 3, 2, 4). If the user nowselects link 2, Easy Terminal can use the reference array N to see thatthe second element N(2) is 3, and thus the appropriate action is that ofthe third link in the HTML, i.e. to reference “Item3”.

Referring to FIGS. 12 to 14, Easy Terminal can provide “cleverscrolling” as follows.

In “clever scrolling”, it is possible to make the colour of all the textuniform (normally black), and then highlight the available links(associated with the coloured text labels) with the four colours. It isalso possible to colour the unavailable links with a default colour (forexample purple) so that the links can be identified on the screen. TheNext/Down button can thus be considered as a button which moves thecoloured (red, green, yellow and blue) labelling to the next set ofpurple links, whilst the Back/Up button moves the colours to theprevious set of purple links.

When a request is made to plot the current page in the available windowon the screen, the index of the first ‘active link’ to which a colouredbutton is assigned is noted as A (STEP 1200). Then the location of thefirst object which is visible on the page is determined (STEP 1205). Ifthis object is a link (STEP 1210), then the index of this link, L, iscompared to A (STEP 1220). If L is less than A, then there are linkspresent on the page which the user can access by pressing UP, and theselinks are coloured purple. A boolean flag BEFORE is set to TRUE (STEP1225), indicating that there are links with an index less than A presenton the page. Likewise if L>A+3 then there are links available to theuser by pressing DOWN, so these links are also coloured purple, but theboolean flag AFTER is set to TRUE (STEP 1230). Otherwise, the link isassociated with one of the coloured buttons, and is assigned to be RED,GREEN, YELLOW, or BLUE (STEPS 1235). This process is repeated until allthe items visible on the page have been plotted, and assigned toappropriate colours.

Referring to FIG. 13, now if the user presses down and AFTER is TRUE(STEP 1300), then the active links are moved down the page by increasingA by 4 (STEP 1305). Otherwise, there are no further links on the page,and the page is therefore scrolled downwards if possible (STEP 1310).

Referring to FIG. 14, similarly if the user presses up and BEFORE isTRUE (STEP 1400), then the active links are moved up the page bydecreasing A by 4 (STEP 1405). Otherwise, there are no further links onthe page, and the page is therefore scrolled upwards if possible (STEP1410).

Alternatives and Modifications

There are many alternative ways in which Easy Terminal could beimplemented, which would provide a similar level of functionality to theuser but with modifications to the hardware and software described.These are described and discussed below.

Although the specific embodiment described herein uses an IBM CompatiblePC with an Ethernet connection, there are many alternative platforms onwhich the Easy Terminal could be implemented. Furthermore, thereprocessing and repurposing of the WWW information could be carried outremotely, or in the network, which could simplify the design of the userterminal hardware. Such an arrangement could be particularly appropriatewhere there are multiple users of the same system, such as in aninteractive screen environment on an aeroplane for passengers.

A videophone could be used as a display for the Easy Terminal. Keystroke commands could either be taken from the videophone keypad, viaspeech recognition, or from an external controller.

A pager, watch, mobile phone or other mobile device could be used as anEasy Terminal to display processed WWW information and using ‘minimumbutton set’ navigation techniques as described herein.

The Easy Terminal software could of course run on any computer platformwhich had sufficient speed, memory and display capabilities. This couldbe provided for instance by a video recorder, satellite broadcastreceiver, digital broadcast decoder, digital video player or a gamesconsole.

The Easy Terminal could run on an appropriately adapted “interactive TV”or “Video on Demand” system. This could be implemented either by runningthe Easy Terminal at the user's premises or at the content provider's.Thus in the first case, the data transmitted across the connection wouldconsist of a conventional Internet data stream, and in the second itwould consist of either an encoded video signal or an embedded datastream.

An Easy Terminal could be built in to a television receiver in much thesame way that Teletext is currently included in the design of televisionreceivers. In this case it would be possible to improve the quality ofthe display by using a non-interlaced high definition mode.

The Easy Terminal could be implemented in two parts: a standard Internetbrowser at the user terminal modified to interpret commands with aremote control 105, and a network based processor which modifiesstandard World Wide Web pages as appropriate.

The Easy Terminal could use any appropriate communications medium forthe transfer of data. This includes, for example, a fixed or mobiletelephone network, a broadcast TV service or radio paging service.

The Easy Terminal could use any suitable remote control unit 105, oralternative source of user commands. These could include:

-   -   Larger controllers with alphanumeric keys    -   Foot control pads, or controllers involving other parts of the        human body    -   Connections other than infra-red, including radio or wired        links.    -   User independent speech recognition could be used as a        substitute for a key-based controller—thus simple words such as        ‘red’ and ‘next’ or ‘twenty-three’ could provide the means of        navigating between links.

In all of these alternatives, the principle of the Easy TerminalNavigation remains the same: the user does not have to position apointer in order to activate a command. However, embodiments of thepresent invention do not exclude the use of a pointing device. A mouseor a trackball can still be used for instance. This enables the sameuser interface as a conventional browser but still brings advantagesrelated to the present invention. For instance, an on-screen bar usedfor coloured text labels can be used as a way of quickly selecting linkswithout the need to move the mouse pointer to the specific location ofthe actual link itself. This could be important to people whose controlover the mouse is limited, eg by physical impairment or by anenvironmental condition such as severe vibration. The coloured textlabels could be replaced by coloured boxes to make this relationshipexplicit for those with impaired vision—which links into the particularability of embodiments of the present invention to display text at largefont sizes. The mouse driver software could be adapted to restrict themouse pointer position on the screen—limiting the movement to horizontalpositions over the coloured text label bar for instance, or the positioncould be quantised to ease the selection of the four boxes/areas/labels.

For situations where a mouse is not appropriate, simpler control deviceslike paddles or foot controllers could be used to provide the samecontrol ability as a mouse.

The Easy Terminal software could be written in any appropriate computerlanguage or protocol. This could be implemented as a plug in to standardsoftware, or in an Internet language such as Java.

A number of the features of the Easy Terminal could be implemented asprocesses carried out remotely with respect to the user. For example,the insertion of numbered links and coloured hot links need notnecessarily be implemented at the user's terminal. Such a processorcould be provided as a network or broadcast service.

The Easy Terminal could also provide rapid access to conventionalTeletext pages. These pages could be displayed either as facsimiles ofthe source pages, or could be enhanced using the display, linking andnavigation techniques described here.

A facility could be provided for the input of text. This could beachieved in a number of ways. Some possibilities include:

-   -   For any text field, the user could select from a number of        options on the screen (this is known as a listbox or ‘pop-out’        box). The options which appear in the box could include items        already known from the setup of the Easy Terminal (the owner's        name, address, telephone number etc.) as well as a history of        recently entered text.    -   The user could make any combination of letters up by selecting        letters one by one from a scrolling or rotating list, or a grid        of characters.    -   Characters could be associated with the numeric keypad by        pressing more than one button at once.    -   Characters could be selected by pressing a button more than        once. These characters could correspond to those currently        written on telephone keypads.

For example, to select the character ‘B’ the ‘2’ button would be pressedtwice since it has the legend ‘ABC’.

-   -   A full alphanumeric keypad could be included by having a larger        number of buttons on the keypad, or the option of attaching a        standard keyboard to the terminal.

The summarising features which are already part of the specificembodiment described above could be extended in a number of ways.

-   -   The user could be provided with the choice of a number of        different levels of summary. This could be selected, for        example, by repeated summary commands.    -   Summarising of text could be carried from one page to the next.        Thus, once the summariser is activated, it would be operational        until a command is given to disable it. This could be provided        as an option or user preference.

The size of text used in HTML pages can be determined both by the authorand the reader. The author of an HTML page can select the relative sizesof fonts with respect to a standard reference size; this can be variedthroughout the document. The reader may select a scaling factor toenlarge or reduce this reference size. A control could be provided toremove certain resizing information from the text so that fonts whichare too large or too small are displayed in more appropriate sizes.

In addition, the ratio between the largest and smallest font sizes usedon the display may be reduced in order to suit the type of display. Forexample, on a computer screen, headings in large font sizes areappropriate, whilst the same large headings may appear too large whenviewed in association with blocks of text on a television screen.

Improved Navigation by Colours

A control could be given to allow a user to set up a choice of standardcolours for the background, the text and the links, or to use thecolours and backgrounds as selected by the author of the page. A furtherrefinement would allow only specific colour combinations to be allowed,whilst those which would significantly reduce the legibility of the pagecould be altered to maintain clarity.

As mentioned above, it is possible to use rectangular areas withcoloured borders to indicate active areas. This can be extended toprovide the option for coloured borders to picture elements (GIFgraphics etc) on the screen. This enables links which are the equivalentof on-screen ‘buttons’ to be selected using colours.

Authors of HTML pages can suggest the background text and link coloursfor their pages. Certain colour combinations may be unsuitable for usewith Easy Terminal's colour navigation schemes. One example of thismight be the low contrast of a yellow link on a white page or a bluelink on a black page. Easy Terminal overcomes this by adjusting thenavigation colours according to the background selected. For example, awhite background will cause the link colours to be darkened, etc. If abackground colour is particularly close to one of the link colours, thenEasy Terminal will darken the background and lighten the link colouruntil a reasonable level of contrast is provided.

Navigation between pages could be achieved using one or more of a numberof possible alternative schemes:

Uniform Length Numbered Links

Numbered links of a uniform length within a page (e.g. 01 02 . . . 99)could be used to allow users with a numeric keypad to select a new page.The page retrieval could start as soon as the final digit is pressed.Note that the number of digits need not necessarily be three, asdescribed above, and could be varied according to the number of links onthe page. Thus a page with less than 10 links could use a single digit,whilst one with more than 10 would require two.

Variable Length Numbered Links

Numbered links with a length which is variable within a page could beused. The user could indicate the end of a number either by pressing areturn key or by having a set time-out after which the end of the entrywould be assumed. For example, links might be enumerated as (1, 2, 3 . .. 10, 11, 12). In this example, if a user pressed 1, there would be atime delay to allow the user to enter a second digit if required. On theother hand, if the user pressed 3, no time delay would be required asthere are only 12 links on the page. By techniques such as these, userscan navigate by means of numbers only and can remove the coloured textlabels if required.

Coloured Text Labels displayed Separate to the Main Text Body

As described above, coloured text labels which contain summaries of thelink text on the page or specially written text can be displayed at thebottom of the screen, and activated by means of associated colouredbuttons on a keypad 105. The number of labels need not necessarily befour, of course, but could be varied according to the width of thescreen. When more links are present on the screen than there areassociated labels, one or two additional keys (Next in our specificembodiment) could be used to cycle through the available links forwardand/or backward.

Note that if the display used could not show text in different colours,coloured markers could be printed at the bottom of the screen close tothe labels so that the association of the labels with the buttons isapparent.

Coloured Text Links within the Main Text Body

In an alternative method of navigation, the labels need not carry anytext at all, but just be different colours. This would involve removingthe colour information from the main body of the text so that most ofthe text is displayed in one single colour (for example black). Linksembedded in the text could then be displayed in different respectivecolours, associated with very simple coloured labels at the bottom ofthe screen. Thus, in the case of our specific embodiment, with fourcoloured labels, the first link in the text would appear red, the secondgreen, and so on. One or two buttons on the keypad 105 could be providedto cycle through the links so that different links would be highlighted,ready for activation. Links in the text could indeed be coloured insteadof the labels on the bottom of the page.

Although the specific embodiment described above uses alternativenavigation schemes to access hypertext links within an HTML document,the same navigation scheme could be used to access HTML labels withinforms or any other object on an HTML page.

Graphical image maps could be included in the navigation schemes byoverlaying links on the images. Thus with a numbered navigation scheme,numbered links could be associated with areas of an image in manydifferent ways. For example,

-   -   the numbered link could flash over the active area of the image    -   a number could be written beside the image with an arrow        pointing to the active region

With a coloured navigation scheme, the active areas of the image couldbe highlighted by means of, for example,

-   -   a coloured frame round the active area of the image    -   changes to the colour palette information over a local area of        an image, so that part of an image appears predominantly the        colour of a link colour    -   a flashing filled area of the appropriate colour could indicate        a link.

Since the links within a map are available as a map file, then the linkscontained within an image could be presented as a series of sets of fourcoloured text labels, which are scrollable using the Next command. Inthis case, the only description available for the link could be theaddress contained within the link itself, and so might contain usefulinformation. One solution to this problem might be to pre-load the pagepointed to by the link, and then use the title of that page as the textfor the link label.

The number of keys used to control the system could be reduced orextended according to the hardware platform and the user requirements. Anumber of examples of variation in key layouts might be:

-   -   navigation between the pages could be done using either only        numbers or only colours    -   on scrolling the page up and down, as abovementioned the sets of        four active links, ie with associated labels, could        automatically be altered according to those currently visible on        the screen. Thus the functions of Next and Down in the specific        embodiment described above would be combined.    -   the function of Up and Back in the specific embodiment described        above could be combined.

Audio could be used as a means of reinforcement. Thus different soundscould be played in response to key presses or commands.

Graphics display techniques could be used to make the operation of theEasy Terminal more intuitive and apparent. A number of examples aregiven below:

-   -   A graphical indicator could be used to show the user how much        and which part of a page is currently being displayed on a        screen.    -   The coloured text labels could be smoothly scrolled to indicate        the relationship between different groups of labels. In the case        of the specific embodiment described above, for example, upon        pressing the Next button, the next four links would scroll into        the visible part of the footer.    -   Shading could be used to indicate that there are regions of the        page which are not currently visible on screen.

For certain applications, access could be restricted to a subset of theInternet by using a set of specially designed pages which only containlinks to other pages within the set. It would also be possible to removefamilies of links according to where they point. For example, all linkscould be removed which start with “http://undesirable.com”.

Other Methods of Controlling Easy Terminal

‘Back’ key

Selecting the ‘0’ button on a keypad can act as a synonym for the ‘Back’key. Pressing # and * (or additional buttons on the keypad) will scrollthe current page up and down by the height of the current screen window.

Remote Control

Easy Terminal may be controlled by other applications. Messages arepassed from the controlling application to Easy Terminal using eitherWindows messaging (DDE, OLE, ActiveX, COM, Java) technique, or hookinginto the mouse or keyboard driver (by emulating key-presses, forexample) on the same computer, or from other computer(s) or equipmentvia the serial, parallel or network ports. In one implementation of EasyTerminal the network-based control is achieved by using TCP/IP. The useof Easy Terminal navigation with colours and numbers lends itself toremote control from other devices and to data-sharing applicationsbecause the controls and signals are not governed by screen layout.

In particular, the ability to user simple keyboard commands to providecontrol over the display of Web pages is not commonly available in otherbrowsers—the control is normally assumed to be via the mouse. Theselection of links is normally carried out by using the mouse to pointto a link (normally underlined and coloured blue on a conventionalbrowser display) and then clicking the mouse button—in Easy Terminalthis can be achieved by using either the coloured text lables, or thecoloured remote control buttons (or their equivalent). Scrolling on aconventional browser required precise movement of the mouse to thescroll bar, and then clicking or dragging, or else the use of the cursorkeys on the keyboard. Easy Terminal's clever scrolling requires just the‘Next’ or ‘Back’ buttons to achieve the same functions—and combines theon-screen highlighting of available links as well.

Easy Terminal thus allows keyboard control of a browser, which could beimportant for any use where a mouse is inconvenient or reducesefficiency. One example of this would be in a situation where a person,whose typing skills are required for inputting information into acomputer, is also required to use a web-based page. Easy Terminalenables this person to keep their hands on the keyboard and stillcontrol and interact with the screen display. This could be particularlyimportant in situations where time efficiency is paramount: CallCentres, Directory Enquiry and other ‘bureau’ based applications.

Linked Easy Terminals

Two Easy Terminal equipped computers can be linked together so thatcommand and control messages can be transferred between them using oneof the ‘Remote Control’ methods described above. This function is notcurrently available as a standard feature on other browsers. This allowsthe two Easy Terminals to be used for tutorial, education, illustration,form filling, and other instances where interactivity between more thanone user is required. This is only possible because of the simplecontrol interface to the web browser which Easy Terminal provides. Forexample if two conventional browsers were linked together usingapplication sharing, then control information about mouse position wouldform the majority of the transferred control messages, whereas for EasyTerminal a few button press messages would be sufficient.

The types of information which can be exchanged are not restricted tojust control messages. Additional information such as display settings,the current document URL, highlighted link and position within thedocument, current frame may also be transferred.

Highlighted Numbers

A number of known techniques may be used to highlight numbers on thepage. This includes emboldening the number, displaying the number in“reverse video” (reversing number and background colour) or displayingthe number with a different background colour.

Improved Page Presentation

Intelligent Masthead

The masthead which displays information to the user such as numberspressed, the status of the current page or other instructions is onlydisplayed where necessary. Thus when a page is fully loaded and is beingdisplayed, the full area of the display is available.

Limited Width Pages

Standard HTML browsers allow pages to have variable widths and heights.If either the width or height exceeds the screen parameters then theuser is given the ability to scroll the document across the screen. EasyTerminal allows the user to scroll the document up and down, but notleft and right. In other words, the page is never allowed to exceed thedisplay width. This is achieved in the following ways.

-   -   Text is conveniently wrapped at spaces and line breaks such that        it fills the width of the screen. However if a single word is        wider than the screen than the document must be scrolled to view        the word. In Easy Terminal the font size of the word is reduced        such that it fits in the available space.    -   If an image is wider than the screen then it is scaled        preserving its aspect ratio so that it fits the screen.    -   If a table is wider than the screen then its column widths are        reduced such that the ratio of the desired widths remains        constant. Text and images within a table are scaled to fit the        table cell if required.        Redundant Link Removal

The HTML processor can consider two adjacent (successive) links on thesame page as being the same. Thus a picture and accompanying text (whichboth point to the same URL) are indicated as the same link by colourand/or number, for example.

Form Control Objects

Conventional browsers use on-screen control objects to provide userinteraction with devices like buttons, checkboxes andlistboxes—typically used in forms. User interaction with these typicallyinvolves mouse clicks. The on-screen control, size and colour of theseobjects is fixed by the operating system and cannot be easily changed.When the font size used to display the text is changed, these objects donot scale to compensate, which means that, for large font sizes, theyare disproportionately sized.

Easy Terminal can display standard HTML form control objects—but itdisplays these by redrawing them from graphics primitives rather thanusing the standard operating system provision. This enables the size andother properties of these objects to be controlled. For example, eachform control object can have a colour, a number and is scaled accordingto the size of the current font.

Typical control objects include:

Name Function button submit a form or make a direct selectionradiobutton select only one of a number of options checkbox select manyoptions combobox select one of a number of pop-up options listboxselection one or more of a number of listed options editbox type in asingle line alphanumeric string using a keyboard carousel textarea typein multiple alphanumeric strings

Some of the form control objects can be assigned to special functionssuch as a control screen.

As with other Easy Terminal user interface features these controlobjects can be manipulated using numbers of colours. Some of these: thecombobox, listbox, editbox and text area require the user to selectitems within the control, again by number or colour. In the case of thecombobox and listbox, the items are numbered and coloured; in the editbox and text area, the carousel of letters is controlled via colour, andthe control focus is shifted from the page to the control. Colouredlinks on the page temporarily revert to the default link colour whilstthe focus is in the control object. The coloured text labels at thebottom of the screen reflect the current colour selection optionsavailable to the user—in the case—the control object options.

Once the user has completed the selection within the control object, thefocus returns to the page, and the link coloring will return.

Slideshows

A Easy Terminal Slideshow consists of a series of files or URLs andtiming information. When the slideshow is selected the URLs aredisplayed in sequence until interrupted by the user.

The slide show implementation of Easy Terminal uses files with theextension type.sho. These files consist of a list of times in secondsand URLs, for example:

-   10 URL1-   5 URL2

In this example, URL1 will be shown for a period of 10 seconds, and URL2will be shown for 5 seconds. After this, the cycle will be repeateduntil the user intervenes by pressing any of the control keys.

This functionality is attractive because no modifications are requiredto the pages in order for them to be used in a slide show.

This function can also be used with linked Easy Terminals where twousers can view the same slide show. The slide show stops when eitheruser presses a control key.

1. An access system for accessing a location in a network by activatinga link in a file, which link contains a location address or anidentifier for a location address, which system comprises: i) means forretrieving one or more files; ii) means for searching a file soretrieved to locate one or more links embedded therein; iii) means forassigning a different respective identifier to any link so located; ivselection means for use by the user to select an assigned identifierfrom among the different respective identifier(s) assigned to any linkso located and presented to the user for selection thereof; v)activating means responsive to selection of an identifier to activatethe associated link; a display control output for use in displaying thefile containing the link to be activated; and means for determiningspatial co-ordinates for links located in a file, said spatialcoordinates relating each link to its location in the file whendisplayed, and the means for assigning an identifier assigns anidentifier to each link in accordance with its spatial coordinates.
 2. Asystem according to claim 1 wherein said spatial co-ordinates are basedon perpendicular axes and the means for assigned an identifier givespreference to the co-ordinate for one of the perpendicular axes, inassigning identifiers to a respective link.
 3. An access systemaccording to claim 1 wherein the selection means comprises acommand-based interface.
 4. An access system for accessing a location ina network by activating a link in a file, which link contains a locationaddress or an identifier for a location address, which system comprises:i) means for retrieving one or more files; ii) means for searching afile so retrieved to locate links embedded therein; iii) means forassigning, to each of a plurality of links so located, a respectivedifferent identifier for presentation to a user; iv) input means,comprising a command-based interface, for use by the user to input anidentifier from among the respective different identifiers presented tothe user; and v) activating means responsive to input of an assignedidentifier to activate the associated link.
 5. A system as in claim 4wherein the activating means activates the associated link so as toretrieve a file located at an address contained in or identified by thatlink.
 6. A system as in claim 4 wherein the activating means activatesthe associated link so as to launch an application associated with thelink.
 7. A system as in claim 4 wherein the system further comprises adisplay control output for use in displaying the file containing thelink to be activated.
 8. A system as in claim 7 wherein the system isfurther provided with a user input for display control commands, andcontrol means to receive such control commands and to control thedisplay in accordance with said control commands.
 9. A system as inclaim 7 wherein means is provided to process at least one activatablelink in a retrieved file, prior to display, so as to modify theon-screen appearance of the link.
 10. A system as in claim 9 wherein theon-screen appearance of the link is modified by the addition of theidentifier assigned to that link.
 11. A system as in claim 10 whereinthe identifier comprises a number.
 12. A system as in claim 10 whereinthe identifier comprises a color.
 13. A system as in claim 7 whereinmeans is provided to process at least one activatable link in aretrieved file so as to generate a second on-screen appearance of thelink.
 14. A system as in claim 13 wherein means is provided to processat least two activatable links in a retrieved file so as to generatesecond on-screen appearances of each respective link, and means isprovided to display a set of said second on-screen appearances of thelinks, separately from other content of said retrieved file.
 15. Asystem as in claim 14 wherein said set comprises a smaller number ofsecond on-screen appearances of processed links than the number of linksin a retrieved file.
 16. A system as in claim 15 said system beingprovided with link input control means for use by the user to input thelinks in a retrieved file whose second on-screen appearances appear insaid set.
 17. A system as in claim 16 wherein the system has means torespond to a scroll input, by means of the link input control means, toscroll the set of second on-screen appearances of links.
 18. A system asin claim 17 wherein the means to respond to a scroll input comprises: i)means to compare the currently displayed set of second on-screenappearances of links with the currently displayed first on-screenappearances of the links in a retrieved file; and ii) means to scrollthe portion of the retrieved file currently displayed in the event thatthe last of said set and the last of the first on-screen appearances ofthe links, in the scroll direction, both relate to the same link.
 19. Asystem as in claim 13 wherein each said second on-screen appearance(s)of a processed link is different from the first on-screen appearance(s)of the associated processed link.
 20. A system as in claim 13 whereinthe means for processing links comprises a truncation device forgenerating a truncated version of a link, for inclusion for said secondon-screen appearance.
 21. A system as in claim 4 wherein the system isprovided with a translation data store for use in translating anidentifier, when inputted by use of said input means, to an activatablelink.
 22. A system as in claim 4 wherein the input means comprises aremote control device.
 23. A system according to claim 22 wherein saidremote control device is based on infra-red transmission.
 24. A systemas in claim 4 wherein the file is written in HyperText Markup Language.25. A system as in claim 4 wherein the system further comprises displaycontrol means to control the on-screen appearance of a file, in additionto the on-screen appearance of one or more links embedded in the file.26. A system as in claim 4 wherein the activating means activates theassociated link so as to set up a communication connection in one ormore communication networks.
 27. A system as in claim 4 comprising atelevision display output for displaying a retrieved file.
 28. Aninformation network browser comprising a system as in claim
 4. 29. Abrowser as in claim 28 further comprising means to process a retrievedfile comprising means to identify an activatable link embedded in saidfile, to generate an identifier for a link so identified, and to displaythe identifier together with the link.
 30. A browser as in claim 28comprising input means including a keypad.
 31. A browser according toclaim 4 further comprising control means for use by the user to controlthe display.
 32. An access system as in claim 4 wherein the input meansis a keypad.
 33. An access system as in claim 32 wherein the assignedidentifier is a number.
 34. An access system as in claim 32 wherein theassigned identifier is a colour and the user inputs the assignedidentifier by activating a coloured button on the keypad.
 35. An accesssystem as in claim 4 wherein the input means comprises a voicerecognition apparatus.
 36. A computer terminal for accessing a locationin a network by activating a link in a file, which link contains alocation address or an identifier for a location address, the terminalcomprising: i) a retriever for retrieving one or more files; ii) asearcher for searching a file so retrieved to locate links embeddedtherein; iii) an assignor for assigning, to each of a plurality of linksso located, a respective different identifier; iv) display fordisplaying said identifiers; v) a keypad for use by the user to input anidentifier from among the displayed identifiers; and vi) activatorresponsive to input of an assigned identifier to activate the associatedlink.
 37. A terminal as in claim 36 wherein the display is operable todisplay the contents of the retrieved file and to display the assignedidentifiers as a modification of the displayed file.
 38. A terminal asin claim 37 wherein the modification is the addition of the display ofcharacters constituting one of said identifiers, whereby said charactersmay be input via said keypad.
 39. A terminal as in claim 37 wherein themodification is the display of links in said retrieved file inrespective different colors, constituting said identifiers, and saidkeypad has keys bearing said colors.
 40. A terminal as in claim 36wherein the assignor is operable to assign up to a predetermined numberof said identifiers, and in the event that the number of links in theretrieved file exceeds said predetermined number: (a) to assign saididentifiers to first links in said retrieved file; and (b) upon receiptof a user input command, to reassign said identifiers to further linksin said retrieved file.
 41. A terminal as in claim 40 wherein theidentifiers are a plurality of different colors and are arranged todisplay those links to which identifiers are currently assigned in thecolors assigned to them, and to display further links, to whichidentifiers are not currently assigned, in a further distinctive color.42. A terminal as in claim 36 operable in response to a scroll commandto scroll said display and reassign said identifiers to links lyingwithin that part of the retrieved file which becomes displayed followingsaid scrolling.
 43. A terminal as in claim 42 wherein the identifiersare a plurality of different colors and are arranged to display thoselinks to which identifiers are currently assigned in the colors assignedto them, and to display further links, to which identifiers are notcurrently assigned, in a further distinctive color.
 44. A terminal as inclaim 36 wherein the display is operable to display the contents of theretrieved file in a first display area and to display the assignedidentifiers in a second, separate display area.
 45. A terminal as inclaim 44 wherein each identifier is also marked upon a keypad keyallocated thereto.
 46. An access system for accessing location in anetwork by activating a link in a file, the system comprising: aretriever for retrieving one or more files; a searcher for searching afile so retrieved to locate links embedded therein; assignor forassigning a respective different identifier to each of a plurality oflinks so located for display to a user; a command-based interface foruse by the user to input an assigned identifier from among therespective different identifiers displayed to the user; and anactivator, responsive to an input of the assigned identifier, toactivate the link associated with the identifier.
 47. A system as inclaim 46, further comprising a processor which modifies the retrievedfile so that the on-screen appearance of the retrieved file is modifiedby the addition of the identifier respectively assigned to each link,the identifier comprising at least one of a number and a color, so thatthe on-screen appearance of the retrieved file includes both theidentifier and the link.
 48. A method for accessing a location in anetwork by activating a link in a file, the method comprising:retrieving one or more files; searching a retrieved file to locate linksembedded therein; assigning a respective different identifier to each ofa plurality of links so located; presenting the respective differentidentifiers to a user; receiving an input from the user through acommand-based interface to receive an assigned identifier associatedwith one of the links from among the respective different identifiers;and activating the associated link responsive to the reception of theidentifier.
 49. A method as in claim 48 further comprising displayingthe retrieved file including and displaying the assigned identifiers asa modification of the retrieved file.
 50. A method as in claim 49wherein the modification includes the addition of the display ofcharacters constituting one of the identifiers.
 51. A method as in claim49 wherein the modification is the display of links in the retrievedfile in respective different colors and the input received through thecommand-based interface involves a selection of one of the colors.
 52. Amethod of accessing a location in a network by activating a link in afile, the method comprising: retrieving one or more files; searching afile so retrieved to locate one or more links embedded therein;assigning a respective different identifier to any link so located;presenting the identifier to any link so located to a user; receiving aselection of an assigned identifier from among any identifierrespectively assigned to any link so located; in response to theselection of the identifier, activating the associated link; anddetermining spatial coordinates for links located in a file, saidspatial coordinates relating each link to its location in the file whendisplayed and wherein assigning the identifier includes assigning anidentifier to each link in accordance with its spatial coordinates.